package org.itboys.core.dto.common;


import lombok.Data;
import org.itboys.core.common.Desc;

import java.lang.reflect.Field;

/**
 * 作者：zzq
 * 时间：2018/9/6
 * 描述：返回前端dto基类
 */
@Data
public class BaseDto {
    protected long id;
    private String createTime;//数据创建时间（年月日 时:分:秒）。
    //用于给前端解释字段意思   （前提该字段使用了@Desc注解）
    private String info;//字段信息

    public BaseDto() {

    }

    public BaseDto(long id, String createTime
    ) {
        this.id = id;
        this.createTime = createTime;
    }

    public String getInfo()
    {
        Field[] fields = this.getClass().getDeclaredFields();
        if(fields.length<0){
            return "";
        }
        String info="{";
        for (int i=0;i< fields.length;i++) {
            String note="";
            if(fields[i].getAnnotation(Desc.class)!=null){
                note=fields[i].getAnnotation(Desc.class).value();
            }
            if(i<fields.length-1) info+=fields[i].getName()+":"+note+",";
            else info+=fields[i].getName()+":"+note;
        }
        info+="}";
        return info;
    }
}
